It was a common practice in an information communication terminal such as a cellular phone or PDA to have a group of processing necessary for realizing functions of the information communication terminal (e.g. a telephone incoming call function, an electronic mail transmission/reception function, a browsing function in Internet access and a multimedia function whose representative is camera or music) incorporated into the information communication terminal together with an operating system (called “OS”). Therefore, the information communication terminal and terminal functions (programs) which can be executed by the information communication terminal are so strongly correlated that when a user of the terminal uses a plurality of terminal functions, he/she needs to own a plurality of information communication terminals.
FIG. 57 is a diagram schematically showing one example of arrangement formed by a plurality of information communication terminals capable of executing a plurality of terminal functions. Shown in FIG. 57 is the example formed of two information communication terminals 10000A and 10000B.
In such arrangement, a terminal user is assumed to hold the plurality of information communication terminals 10000A and 10000B all the time and execute a terminal function he/she wants to use from an individual terminal (10000A or 10000B).
Under these circumstances, various systems are proposed which enable a single information communication terminal to execute a plurality of terminals functions. In the following, outlines will be shown with respect to several typical examples.
FIG. 58 is a diagram showing one typical example of a structure for statically switching a terminal function in order to execute a plurality of terminal functions. Shown in FIG. 58 is the example of a structure using two ROM in which terminal functions (programs) for switching are written.
In such a structure, an information communication terminal 10000 comprises an ROM entry necessary for start-up. In an ROM 20000A, a terminal function environment 60A is written and in an ROM 20000B, a terminal function environment 60B is written.
Assume here that a certain terminal user executes the terminal function environment 60A on the information communication terminal 10000. The terminal user once turns off power of the information communication terminal 10000. Then, insert the ROM 20000A in which the terminal function environment 60A he/she wants to use is written into the information communication terminal. Thereafter, by supplying power to re-start, the terminal function environment 60A stored in the inserted ROM is read into the information communication terminal 10000 and executed.
Thus, in such a structure as shown in the above-described FIG. 58, insertion of the ROM enables one information communication terminal to use a plurality of terminal functions.
The ROM system shown in FIG. 58, however, has the following shortcomings.
In the ROM system shown in FIG. 58, switching of a terminal function is manual switching realized by replacing an ROM through cut-off of power and re-start.
Moreover, the ROM system shown in FIG. 58 fails to cope with an external communication request such as a call or mail to a terminal function not inserted into the information communication terminal 10000.
As a technique for coping with such a request is the system using a plurality of telephone numbers as recited in Patent Literature 1. Disclosed in Patent Literature 1 is a system, with a plurality of external memories in which terminal functions (programs) for switching are written, which allows one cellular phone to make a call by switching a telephone number according to an occasion of use similarly to the structure shown in FIG. 58 (see Patent Literature 1). Described in Patent Literature 1 is that with held telephone numbers registered in a relay device, the system has a unit for transferring, when a call to other telephone number (telephone number in sleep) arrives than a telephone number selected as being in operation after switching, the telephone call to the telephone number in operation, thereby allowing a telephone call to arrive at its own telephone number as of before switching.
In the system recited in Patent Literature 1, however, for switching a telephone number in operation to a telephone number in sleep in practice, it is necessary to replace an external memory by one corresponding to each telephone number. The system recited in Patent Literature 1 accordingly has a problem that operation of an information communication terminal should be stopped such as cut-off of power or re-start in switching operation.
Next, FIG. 59 is a diagram showing one typical example of a structure for executing a plurality of terminal functions. In the example shown in FIG. 59, the structure has a switching control software 40 for switching two terminal function applications 50A and 50B in software which are incorporated into one information communication terminal, which is provided on a CPU 10, an OS 20 and a middle ware 30 which provides processing necessary for a terminal function application.
In such a structure, the terminal function applications 50A and 50B operate on the CPU 10, the OS 20 and the middle ware 30.
Assume here that a certain terminal user switches the terminal function application 50A being currently executed to another terminal function application 50B. At this time, instruct the switching control software 40 to execute switching to the terminal function application 50B. Upon receiving the instruction, the switching control software 40 uses the OS 20 and the middle ware 30 to stop operation of the terminal function application 50A being currently executed. Then, similarly using the OS 20 and the middle ware 30, resume the operation of the terminal function application 50B to be executed.
Thus, the system shown in FIG. 59 enables high-speed switching by realization of switching control in software. The terminal user is allowed to dynamically switch a terminal function by instructing the switching control software 40 about a terminal function (50A or 50B) to be used.
The system shown in FIG. 59, however, has the following problems.
More specifically, the system shown in FIG. 59 is not allowed to use other functions than a group of terminal functions adapted to the OS 20 or the middle ware 30 mounted on the information communication terminal. The reason is that shown in FIG. 59 is the system in which the OS 20 and the middle ware 30 originally incorporated into the information communication terminal are shared by a plurality of terminal functions, so that the plurality of terminal functions are executed on the OS 20 or the middle ware 30. As a result, in the system shown in FIG. 59, because when the OS 20 or the middle ware 30 incorporates a terminal function set up on a different execution environment, an extremely large number of software implanting steps are required to limit execution of terminal functions, thereby disabling terminal functions to be freely incorporated according to external environments or the like.
Moreover, even in a case where a terminal function meeting the above-described limitation is implanted, the system shown in FIG. 59 might be largely affected when the implanted terminal function has verification omission. More specifically, since the OS 20 and the middle ware 30 are shared by a plurality of terminal functions in the system shown in FIG. 59, when the terminal function application 50B develops a fault, switching by an instruction from the switching control software 40 fails to operate or even if switching is made, damages to data necessary for the terminal function application 50A by the fault might cause the operation of the terminal function application 50A to have a problem.
Other shortcoming of the system shown in FIG. 59 is that, when a terminal function to be used is realized by closed software, it is impossible to make a combination itself of relevant terminal functions and impossible to cope with such an external communication request as a call or mail to the terminal function application 50 not in operation.
Further, disclosed is a telephone set having two modes, an automatic telephone message recording function and a simple pager function in advance whose mode shifts according to an incoming call and key operation similarly to the structure shown in FIG. 59 (see Patent Literature 2). In the structure recited in Patent Literature 2, the automatic telephone message recording function is automatically started upon detection of an incoming call when an extremely small volume is set. However, since both the functions are executed on the same execution environment in advance, the system has the same problem as that described above that a terminal function not adapted to an execution environments mounted cannot be incorporated to limit a terminal function to be incorporated.
On the other hand, also known is a system which has execution environments corresponding to a plurality of terminal function applications and switches them, not using the same execution environment for the plurality of terminal functions as is described above. This system has, for example, such a structure as shown in FIG. 60 which is called a virtualization technique in the field of a personal computer.
In such a structure, a CPU 11 has a hypervisor mode 13 other than a common user supervisor mode 12. The terminal function environment 60A having the terminal function application 50A operating on an OS 20A and a middle ware 30A and the terminal function environment 60B having the terminal function application 50B operating on an OS 20B and a middle ware 30B execute switching operation on the user supervisor mode 12. In such a structure, the OS 20A may be Linux (registered trademark), the OS 30B may be Symbian OS (registered trademark), different kinds of OS, for example.
A switching control software 41 executed on the hypervisor mode 13 separates an address space required by the terminal function environment 60A and an address space required by the terminal function environment 60B by controlling a memory management unit 14 at the time of switching. The memory management unit 14 is capable of preventing the user supervisor mode 12 from referring to a memory region used by the hypervisor mode 13.
Then, the switching control software 41 has a function of preserving and re-setting a data class necessary for terminal function environments, that is, context such as a register value or control information in a CPU.
Shift from the user supervisor mode 12 to the hypervisor mode 13 in the CPU 11 is realized by execution of a special switching instruction in the OS 20. In other words, the OS 20A and the OS 20B give an instruction to the switching control software 41 on switching by using the above-described instruction.
Here, description will be made of a manner of switching from the terminal function environment 60A to the terminal function environment 60B. An application executed in the terminal function environment 60A requests the OS 20A for switching to the terminal environment 60B. The requested OS 20A issues the above-described special instruction for switching to call up the switching control software 41 operating on the hypervisor mode 13. The called switching control software 41 preserves the context of the terminal function environment 60A being currently executed. Then, by re-setting the context of the terminal function environment 60B already preserved, the terminal function environment 60B starts operation.
Thus, such a structure as shown in FIG. 60 enables not only dynamic switching control by software but also execution of switching to a terminal environment whose OS is different.
The system using a virtualization technique shown in FIG. 60, however, fails to show switching of a terminal function in linkage with an external communication content.
Description will be made of the above point. The system shown in FIG. 60 is recited, for example, in Patent Literature 3 and Patent Literature 4.
Recited in Patent Literature 3 is a processor with a separation region provided in a system memory, which has a normal execution mode and a separation execution mode. The normal execution mode recited in Patent Literature 3 is equivalent to the user supervisor mode in FIG. 60 and the separation execution mode is equivalent to the hypervisor mode in FIG. 60. In Patent Literature 3, switching between the normal execution mode and the separation execution mode is neither executed by a processor which executes switching upon receiving an external request nor executed taking contents of communication of the processor with other processor, for example, into consideration.
Patent Literature 4 discloses a structure comprising a real machine and a plurality of terminal devices to switch and execute a plurality of operating systems through a virtual machine monitor. In the system recited in Patent Literature 4, the plurality of operating systems are shared by the plurality of terminal devices with a terminal control unit arranged in an address space shared therebetween. In Patent Literature 4, switching of the plurality of operating systems is executed upon reception of a message transmission/reception requesting task or a message transmission/reception request from the plurality of the operating systems by the terminal control unit. This system, however, fails to execute switching control according to an individual content of each request. This system, therefore, has no such manner of controlling switching with priority assigned to each request or controlling switching timing.
As described in the foregoing, the system shown in FIG. 60 and the systems recited in Patent Literature 3 and Patent Literature 4 are incapable, when while switching to one terminal function is executed in response to one request, other request is made to other terminal function as of before switching, of accepting other request because no switching control is executed based on contents of external communication.
In a case, for example, where such system as described above is applied to a portable information terminal which communicates with other portable information terminal through telephone or the like without any modification, when while switching from one terminal function of the portable information terminal to other terminal function is executed, an incoming call is made to one terminal function as of before switching, the system is incapable of coping with such a case, so that the incoming call is not allowed to arrive. Therefore, in a case of telephone answering whose emergency is particularly higher than that of external communication such as the Internet, it is impossible to apply switching execution by the above-described system without modification.
Accordingly, the related systems including the above-described examples take none of switching in linkage with an external communication device into consideration and fail to cope with problems occurring when accepting an external communication request such as a call or mail to a terminal function application not in operation.
Moreover, since the related systems are incapable of switching in linkage with a communication device, switching of execution environments is constantly required on a minute time basis, resulting in having extremely large power consumption.    Patent Literature 1: Japanese Patent Laying-Open No. 2005-348233.    Patent Literature 2: Japanese Patent Laying-Open No. 2003-229950.    Patent Literature 3: Japanese Translation of PCT International Application No. 2004-500666.    Patent Literature 4: Japanese Patent No. 2522162.
As described above, it is impossible for an information communication terminal capable of executing a plurality of terminal functions on one physical terminal to incorporate mounted terminal functions freely without limitation and to execute terminal function switching operation taking contents of external communication into consideration.
With the systems (architecture) shown in FIG. 59 and FIG. 60, in particular, it is impossible to prevent interference between terminal functions when developing a fault, which denotes that free combination of terminal functions is substantially impossible. In this term, availability of functions is limited.
Similarly, the above-described systems are capable of copying with a communication request from outside only by spontaneous switching by a terminal user, which denotes that instant reception of an important notification is substantially impossible. In this term, availability of communication is limited.
On the other hand, as ubiquitous society arrives, demanded are an information communication processing device, an information communication terminal and an information communication system enabling one information communication terminal to freely combine and switch terminal functions for each network such as a telephone network, the Internet and an in-house network according to a notification from the network or an external environment without owning a plurality of information communication terminals.